home *** CD-ROM | disk | FTP | other *** search
/ Amiga Plus 1995 #5 & #6 / Amiga Plus CD - 1995 - No. 5 and 6.iso / pd / programmierung / triton / assembler / triton.i < prev    next >
Text File  |  1995-08-25  |  49KB  |  1,531 lines

  1.     IFND LIBRARIES_TRITON_I
  2. LIBRARIES_TRITON_I SET 1
  3. **
  4. **    $Filename: libraries/triton.i $
  5. **    $Release: 1.1 $
  6. **    $Revision: 2.54 $
  7. **
  8. **    triton.library definitions
  9. **
  10. **    Translated to assembly language by Oskar Liljeblad
  11. **
  12. **    (C) Copyright 1991-1994 Stefan Zeiger
  13. **    All Rights Reserved
  14. **
  15.  
  16. TRITONNAME   MACRO
  17.        DC.B  'triton.library',0
  18.        ENDM
  19.  
  20. TRITON10VERSION        EQU    1
  21. TRITON11VERSION        EQU    2
  22.  
  23. * ////////////////////////////////////////////////////////////////////// *
  24. * ////////////////////////////////////////////////////////// Includes // *
  25. * ////////////////////////////////////////////////////////////////////// *
  26.  
  27.    IFND EXEC_TYPES_I
  28.    include "exec/types.i"
  29.    ENDC
  30.  
  31.    IFND INTUITION_INTUITIONBASE_I
  32.    include "intuition/intuitionbase.i"
  33.    ENDC
  34.  
  35.    IFND INTUITION_INTUITION_I
  36.    include "intuition/intuition.i"
  37.    ENDC
  38.  
  39.    IFND INTUITION_GADGETCLASS_I
  40.    include "intuition/gadgetclass.i"
  41.    ENDC
  42.  
  43.    IFND INTUITION_IMAGECLASS_I
  44.    include "intuition/imageclass.i"
  45.    ENDC
  46.  
  47.    IFND INTUITION_CLASSUSR_I
  48.    include "intuition/classusr.i"
  49.    ENDC
  50.  
  51.    IFND GRAPHICS_GFXBASE_I
  52.    include "graphics/gfxbase.i"
  53.    ENDC
  54.  
  55.    IFND LIBRARIES_GADTOOLS_I
  56.    include "libraries/gadtools.i"
  57.    ENDC
  58.  
  59.    IFND LIBRARIES_DISKFONT_I
  60.    include "libraries/diskfont.i"
  61.    ENDC
  62.  
  63.    IFND UTILITY_TAGITEM_I
  64.    include "utility/tagitem.i"
  65.    ENDC
  66.  
  67.    IFND WORKBENCH_STARTUP_I
  68.    include "workbench/startup.i"
  69.    ENDC
  70.  
  71.    IFND WORKBENCH_WORKBENCH_I
  72.    include "workbench/workbench.i"
  73.    ENDC
  74.  
  75.  
  76. * ////////////////////////////////////////////////////////////////////// *
  77. * //////////////////////////////////////////////////////////// Macros // *
  78. * ////////////////////////////////////////////////////////////////////// *
  79.  
  80. ; implementors note: fix these bloody macros layout (tabs, spaces etc)!
  81.  
  82.  IFND TR_NOMACROS
  83.  
  84. * Project
  85.  
  86.                 * ProjectDefinition(name) struct TagItem name[]=
  87.  
  88. EndProject    MACRO        * EndProject TAG_END
  89.         DC.L TAG_END
  90.         ENDM
  91.  
  92. WindowTitle    MACRO        * WridowTitle(t) TRWI_Title,(t)
  93.         DC.L TRWI_Title,\1
  94.         ENDM
  95.  
  96. ScreenTitle    MACRO        * ScreenTitle(t) TRWI_ScreenTitle,(t)
  97.         DC.L TRWI_ScreenTitle,\1
  98.         ENDM
  99.  
  100. WindowID    MACRO        * WindowID(id) TRWI_ID,(id)
  101.         DC.L TRWI_ID,\1
  102.         ENDM
  103.  
  104. WindowFlags    MACRO        * WindowFlags(f) TRWI_Flags,(ULONG)(f)
  105.         DC.L TRWI_Flags,\1
  106.         ENDM
  107.  
  108. WindowPosition    MACRO        * WindowPosition(pos) TRWI_Position,(pos)
  109.         DC.L TRWI_Position,\1
  110.         ENDM
  111.  
  112. WindowUnderscore   MACRO    * WindowUnderscore(und) TRWI_Underscore,(und)
  113.         DC.L TRWI_Underscore,\1
  114.         ENDM
  115.  
  116. WindowDimensions   MACRO    * WindowDimensions(dim) TRWI_Dimensions,(dim)
  117.         DC.L TRWI_Dimensions,\1
  118.         ENDM
  119.  
  120. WindowBackfillWin   MACRO    * WindowBackfillWin TRWI_Backfill,TRBF_WINDOWBACK
  121.         DC.L TRWI_Backfill,TRBF_WINDOWBACK
  122.         ENDM
  123.  
  124. WindowBackfillReq   MACRO    * WindowBackfillReq TRWI_Backfill,TRBF_REQUESTERBACK
  125.         DC.L TRWI_Backfill,TRBF_REQUESTERBACK
  126.         ENDM
  127.  
  128. WindowBackfillNon   MACRO    * WindowBackfillNone TRWI_Backfill,TRBF_NONE
  129.         DC.L TRWI_Backfill,TRBF_NONE
  130.         ENDM
  131.  
  132. WindowBackfillS    MACRO        * WindowBackfillS TRWI_Backfill,TRBF_SHINE
  133.         DC.L TRWI_Backfill,TRBF_SHINE
  134.         ENDM
  135.  
  136. WindowBackfillSA   MACRO    * WindowBackfillSA TRWI_Backfill,TRBF_SHINE_SHADOW
  137.         DC.L TRWI_Backfill,TRBF_SHINE_SHADOW
  138.         ENDM
  139.  
  140. WindowBackfillSF   MACRO    * WindowBackfillSF TRWI_Backfill,TRBF_SHINE_FILL
  141.         DC.L TRWI_Backfill,TRBF_SHINE_FILL
  142.         ENDM
  143.  
  144. WindowBackfillSB   MACRO    * WindowBackfillSB TRWI_Backfill,TRBF_SHINE_BACKGROUND
  145.         DC.L TRWI_Backfill,TRBF_SHINE_BACKGROUND
  146.         ENDM
  147.  
  148. WindowBackfillA    MACRO        * WindowBackfillA TRWI_Backfill,TRBF_SHADOW
  149.         DC.L TRWI_Backfill,TRBF_SHADOW
  150.         ENDM
  151.  
  152. WindowBackfillAF   MACRO    * WindowBackfillAF TRWI_Backfill,TRBF_SHADOW_FILL
  153.         DC.L TRWI_Backfill,TRBF_SHADOW_FILL
  154.         ENDM
  155.  
  156. WindowBackfillAB   MACRO    * WindowBackfillAB TRWI_Backfill,TRBF_SHADOW_BACKGROUND
  157.         DC.L TRWI_Backfill,TRBF_SHADOW_BACKGROUND
  158.         ENDM
  159.  
  160. WindowBackfillF    MACRO        * WindowBackfillF TRWI_Backfill,TRBF_FILL
  161.         DC.L TRWI_Backfill,TRBF_FILL
  162.         ENDM
  163.  
  164. WindowBackfillFB   MACRO    * WindowBackfillFB TRWI_Backfill,TRBF_FILL_BACKGROUND
  165.         DC.L TRWI_Backfill,TRBF_FILL_BACKGROUND
  166.         ENDM
  167.  
  168. CustomScreen    MACRO        * CustomScreen(scr) TRWI_CustomScreen,(scr)
  169.         DC.L TRWI_CustomScreen,\1
  170.         ENDM
  171.  
  172. PubScreen    MACRO        * PubScreen(scr) TRWI_PubScreen,(scr)
  173.         DC.L TRWI_PubScreen,\1
  174.         ENDM
  175.  
  176. PubScreenName    MACRO        * PubScreenName(name) TRWI_PubScreenName,(name)
  177.         DC.L TRWI_PubScreenName,\1
  178.         ENDM
  179.  
  180. * Menus
  181.  
  182. BeginMenu    MACRO        * BeginMenu(t) TRMN_Title,(ULONG)(t)
  183.         DC.L TRMN_Title,\1
  184.         ENDM
  185.  
  186. MenuFlags    MACRO        * MenuFlags(f) TRMN_Flags,(f)
  187.         DC.L TRMN_Flags,\1
  188.         ENDM
  189.  
  190. MenuItem    MACRO        * MenuItem(t,id) TRMN_Item,(ULONG)(t),TRAT_ID,id
  191.         DC.L TRMN_Item,\1,TRAT_ID,\2
  192.         ENDM
  193.  
  194. BeginSub    MACRO        * BeginSub(t) TRMN_Item,(ULONG)(t)
  195.         DC.L TRMN_Item,\1
  196.         ENDM
  197.  
  198. MenuItemD    MACRO        * MenuItemD(t,id) TRMN_Item,(ULONG)(t),MenuFlags(TRMF_DISABLED),TRAT_ID,id
  199.         DC.L TRMN_Item,\1
  200.         MenuFlags TRMF_DISABLED
  201.         DC.L TRAT_ID,\2
  202.         ENDM
  203.  
  204. SubItem        MACRO        * SubItem(t,id) TRMN_Sub,(ULONG)(t),TRAT_ID,id
  205.         DC.L TRMN_Sub,\1,TRAT_ID,\2
  206.         ENDM
  207.  
  208. SubItemD    MACRO        * SubItemD(t,id) TRMN_Sub,(ULONG)(t),MenuFlags(TRMF_DISABLED),TRAT_ID,id
  209.         DC.L TRMN_Sub,\1
  210.         MenuFlags TRMF_DISABLED
  211.         DC.L TRAT_ID,\2
  212.         ENDM
  213.  
  214. ItemBarlabel    MACRO        * ItemBarlabel TRMN_Item,TRMN_BARLABEL
  215.         DC.L TRMN_Item,TRMN_BARLABEL
  216.         ENDM
  217.  
  218. SubBarlabel    MACRO        * SubBarlabel TRMN_Sub,TRMN_BARLABEL
  219.         DC.L TRMN_Sub,TRMN_BARLABEL
  220.         ENDM
  221.  
  222. * Group
  223.  
  224. HorizGroup    MACRO        * HorizGroup TRGR_Horiz,NULL
  225.         DC.L TRGR_Horiz,0
  226.         ENDM
  227.  
  228. HorizGroupE    MACRO        * HorizGroupE TRGR_Horiz,TRGR_EQUALSHARE
  229.         DC.L TRGR_Horiz,TRGR_EQUALSHARE
  230.         ENDM
  231.  
  232. HorizGroupS    MACRO        * HorizGroupS TRGR_Horiz,TRGR_PROPSPACES
  233.         DC.L TRGR_Horiz,TRGR_PROPSPACES
  234.         ENDM
  235.  
  236. HorizGroupA    MACRO        * HorizGroupA TRGR_Horiz,TRGR_ALIGN
  237.         DC.L TRGR_Horiz,TRGR_ALIGN
  238.         ENDM
  239.  
  240. HorizGroupEA    MACRO        * HorizGroupEA TRGR_Horiz,TRGR_EQUALSHARE|TRGR_ALIGN
  241.         DC.L TRGR_Horiz,TRGR_EQUALSHARE!TRGR_ALIGN
  242.         ENDM
  243.  
  244. HorizGroupSA    MACRO        * HorizGroupSA TRGR_Horiz,TRGR_PROPSPACES|TRGR_ALIGN
  245.         DC.L TRGR_Horiz,TRGR_PROPSPACES!TRGR_ALIGN
  246.         ENDM
  247.  
  248. HorizGroupC    MACRO        * HorizGroupC TRGR_Horiz,TRGR_CENTER
  249.         DC.L TRGR_Horiz,TRGR_CENTER
  250.         ENDM
  251.  
  252. HorizGroupEC    MACRO        * HorizGroupEC TRGR_Horiz,TRGR_EQUALSHARE|TRGR_CENTER
  253.         DC.L TRGR_Horiz,TRGR_EQUALSHARE!TRGR_CENTER
  254.         ENDM
  255.  
  256. HorizGroupSC    MACRO        * HorizGroupSC TRGR_Horiz,TRGR_PROPSPACES|TRGR_CENTER
  257.         DC.L TRGR_Horiz,TRGR_PROPSPACES!TRGR_CENTER
  258.         ENDM
  259.  
  260. HorizGroupAC    MACRO        * HorizGroupAC TRGR_Horiz,TRGR_ALIGN|TRGR_CENTER
  261.         DC.L TRGR_Horiz,TRGR_ALIGN!TRGR_CENTER
  262.         ENDM
  263.  
  264. HorizGroupEAC    MACRO        * HorizGroupEAC TRGR_Horiz,TRGR_EQUALSHARE|TRGR_ALIGN|TRGR_CENTER
  265.         DC.L TRGR_Horiz,TRGR_EQUALSHARE!TRGR_ALIGN!TRGR_CENTER
  266.         ENDM
  267.  
  268. HorizGroupSAC    MACRO        * HorizGroupSAC TRGR_Horiz,TRGR_PROPSPACES|TRGR_ALIGN|TRGR_CENTER
  269.         DC.L TRGR_Horiz,TRGR_PROPSPACES!TRGR_ALIGN!TRGR_CENTER
  270.         ENDM
  271.  
  272. VertGroup    MACRO        * VertGroup TRGR_Vert,NULL
  273.         DC.L TRGR_Vert,0
  274.         ENDM
  275.  
  276. VertGroupE    MACRO        * VertGroupE TRGR_Vert,TRGR_EQUALSHARE
  277.         DC.L TRGR_Vert,TRGR_EQUALSHARE
  278.         ENDM
  279.  
  280. VertGroupS    MACRO        * VertGroupS TRGR_Vert,TRGR_PROPSPACES
  281.         DC.L TRGR_Vert,TRGR_PROPSPACES
  282.         ENDM
  283.  
  284. VertGroupA    MACRO        * VertGroupA TRGR_Vert,TRGR_ALIGN
  285.         DC.L TRGR_Vert,TRGR_ALIGN
  286.         ENDM
  287.  
  288. VertGroupEA    MACRO        * VertGroupEA TRGR_Vert,TRGR_EQUALSHARE|TRGR_ALIGN
  289.         DC.L TRGR_Vert,TRGR_EQUALSHARE!TRGR_ALIGN
  290.         ENDM
  291.  
  292. VertGroupSA    MACRO        * VertGroupSA TRGR_Vert,TRGR_PROPSPACES|TRGR_ALIGN
  293.         DC.L TRGR_Vert,TRGR_PROPSPACES!TRGR_ALIGN
  294.         ENDM
  295.  
  296. VertGroupC    MACRO        * VertGroupC TRGR_Vert,TRGR_CENTER
  297.         DC.L TRGR_Vert,TRGR_CENTER
  298.         ENDM
  299.  
  300. VertGroupEC    MACRO        * VertGroupEC TRGR_Vert,TRGR_EQUALSHARE|TRGR_CENTER
  301.         DC.L TRGR_Vert,TRGR_EQUALSHARE!TRGR_CENTER
  302.         ENDM
  303.  
  304. VertGroupSC    MACRO        * VertGroupSC TRGR_Vert,TRGR_PROPSPACES|TRGR_CENTER
  305.         DC.L TRGR_Vert,TRGR_PROPSPACES!TRGR_CENTER
  306.         ENDM
  307.  
  308. VertGroupAC    MACRO        * VertGroupAC TRGR_Vert,TRGR_ALIGN|TRGR_CENTER
  309.         DC.L TRGR_Vert,TRGR_ALIGN!TRGR_CENTER
  310.         ENDM
  311.  
  312. VertGroupEAC    MACRO        * VertGroupEAC TRGR_Vert,TRGR_EQUALSHARE|TRGR_ALIGN|TRGR_CENTER
  313.         DC.L TRGR_Vert,TRGR_EQUALSHARE!TRGR_ALIGN!TRGR_CENTER
  314.         ENDM
  315.  
  316. VertGroupSAC    MACRO        * VertGroupSAC TRGR_Vert,TRGR_PROPSPACES|TRGR_ALIGN|TRGR_CENTER
  317.         DC.L TRGR_Vert,TRGR_PROPSPACES!TRGR_ALIGN!TRGR_CENTER
  318.         ENDM
  319.  
  320. EndGroup    MACRO        * EndGroup TRGR_End,NULL
  321.         DC.L TRGR_End,0
  322.         ENDM
  323.  
  324. ColumnArray    MACRO        * ColumnArray TRGR_Horiz,TRGR_ARRAY|TRGR_ALIGN|TRGR_CENTER
  325.         DC.L TRGR_Horiz,TRGR_ARRAY!TRGR_ALIGN!TRGR_CENTER
  326.         ENDM
  327.  
  328. LineArray    MACRO        * LineArray TRGR_Vert,TRGR_ARRAY|TRGR_ALIGN|TRGR_CENTER
  329.         DC.L TRGR_Vert,TRGR_ARRAY!TRGR_ALIGN!TRGR_CENTER
  330.         ENDM
  331.  
  332. BeginColumn    MACRO        * BeginColumn TRGR_Vert,TRGR_PROPSHARE|TRGR_ALIGN|TRGR_CENTER
  333.         DC.L TRGR_Vert,TRGR_PROPSHARE!TRGR_ALIGN!TRGR_CENTER
  334.         ENDM
  335.  
  336. BeginLine    MACRO        * BeginLine TRGR_Horiz,TRGR_PROPSHARE|TRGR_ALIGN|TRGR_CENTER
  337.         DC.L TRGR_Horiz,TRGR_PROPSHARE!TRGR_ALIGN!TRGR_CENTER
  338.         ENDM
  339.  
  340. BeginColumnI    MACRO        * BeginColumnI TRGR_Vert,TRGR_PROPSHARE|TRGR_ALIGN|TRGR_CENTER|TRGR_INDEP
  341.         DC.L TRGR_Vert,TRGR_PROPSHARE!TRGR_ALIGN!TRGR_CENTER!TRGR_INDEP
  342.         ENDM
  343.  
  344. BeginLineI    MACRO        * BeginLineI TRGR_Horiz,TRGR_PROPSHARE|TRGR_ALIGN|TRGR_CENTER|TRGR_INDEP
  345.         DC.L TRGR_Horiz,TRGR_PROPSHARE!TRGR_ALIGN!TRGR_CENTER!TRGR_INDEP
  346.         ENDM
  347.  
  348. EndColumn    MACRO        * EndColumn EndGroup
  349.         DC.L EndGroup
  350.         ENDM
  351.  
  352. EndLine        MACRO        * EndLine EndGroup
  353.         DC.L EndGroup
  354.         ENDM
  355.  
  356. EndArray    MACRO        * EndArray EndGroup
  357.         DC.L EndGroup
  358.         ENDM
  359.  
  360. * Spaces
  361.  
  362. SpaceB        MACRO        * SpaceB TROB_Space,TRST_BIG
  363.         DC.L TROB_Space,TRST_BIG
  364.         ENDM
  365.  
  366. Space        MACRO        * Space TROB_Space,TRST_NORMAL
  367.         DC.L TROB_Space,TRST_NORMAL
  368.         ENDM
  369.  
  370. SpaceS        MACRO        * SpaceS TROB_Space,TRST_SMALL
  371.         DC.L TROB_Space,TRST_SMALL
  372.         ENDM
  373.  
  374. SpaceN        MACRO        * SpaceN TROB_Space,TRST_NONE
  375.         DC.L TROB_Space,TRST_NONE
  376.         ENDM
  377.  
  378. * Text
  379.  
  380. TextN        MACRO        * TextN(text) TROB_Text,NULL,TRAT_Text,(ULONG)text
  381.         DC.L TROB_Text,0
  382.         DC.L TRAT_Text,\1
  383.         ENDM
  384.  
  385. TextH        MACRO        * TextH(text) TROB_Text,NULL,TRAT_Text,(ULONG)text,TRAT_Flags,TRTX_HIGHLIGHT
  386.         DC.L TROB_Text,NULL,TRAT_Text,\1,TRAT_Flags,TRTX_HIGHLIGHT
  387.         ENDM
  388.  
  389. Text3        MACRO        * Text3(text) TROB_Text,NULL,TRAT_Text,(ULONG)text,TRAT_Flags,TRTX_3D
  390.         DC.L TROB_Text,0
  391.         DC.L TRAT_Text,\1
  392.         DC.L TRAT_Flags,TRTX_3D
  393.         ENDM
  394.  
  395. TextB        MACRO        * TextB(text) TROB_Text,NULL,TRAT_Text,(ULONG)text,TRAT_Flags,TRTX_BOLD
  396.         DC.L TROB_Text,0
  397.         DC.L TRAT_Text,\1
  398.         DC.L TRAT_Flags,TRTX_BOLD
  399.         ENDM
  400.  
  401. TextT        MACRO        * TextT(text) TROB_Text,NULL,TRAT_Text,(ULONG)text,TRAT_Flags,TRTX_TITLE
  402.         DC.L TROB_Text,0
  403.         DC.L TRAT_Text,\1
  404.         DC.L TRAT_Flags,TRTX_TITLE
  405.         ENDM
  406.  
  407. TextID        MACRO        * TextID(text,id) TROB_Text,NULL,TRAT_Text,(ULONG)text,TRAT_ID,id
  408.         DC.L TROB_Text,0
  409.         DC.L TRAT_Text,\1
  410.         DC.L TRAT_ID,\2
  411.         ENDM
  412.  
  413. TextNR        MACRO        * TextNR(t) TextN(t),TRAT_Flags,TROF_RIGHTALIGN
  414.         TextN \1
  415.         DC.L TRAT_Flags,TROF_RIGHTALIGN
  416.         ENDM
  417.  
  418. CenteredText    MACRO        * CenteredText(text) HorizGroupSC,Space,TextN(text),Space,EndGroup
  419.         HorizGroupSC
  420.             Space
  421.             TextN \1
  422.             Space
  423.         EndGroup
  424.         ENDM
  425.  
  426. CenteredTextH    MACRO        * CenteredTextH(text) HorizGroupSC,Space,TextH(text),Space,EndGroup
  427.         HorizGroupSC
  428.             Space
  429.             TextH \1
  430.             Space
  431.         EndGroup
  432.         ENDM
  433.  
  434. CenteredText3    MACRO        * CenteredText3(text) HorizGroupSC,Space,Text3(text),Space,EndGroup
  435.         HorizGroupSC
  436.             Space
  437.             Text3 \1
  438.             Space
  439.         EndGroup
  440.         ENDM
  441.  
  442. CenteredTextB    MACRO        * CenteredTextB(text) HorizGroupSC,Space,TextB(text),Space,EndGroup
  443.         HorizGroupSC
  444.             Space
  445.             TextB \1
  446.             Space
  447.         EndGroup
  448.         ENDM
  449.  
  450. CenteredTextID    MACRO        * CenteredTextID(text,id) HorizGroupSC,Space,TextID(text,id),Space,EndGroup
  451.         HorizGroupSC
  452.             Space
  453.             TextID \1,\2
  454.             Space
  455.         EndGroup
  456.         ENDM
  457.  
  458. CenteredText_BS    MACRO        * CenteredText_BS(text) HorizGroupSC,SpaceB,TextN(text),SpaceB,EndGroup
  459.         HorizGroupSC
  460.             SpaceB
  461.             TextN \1
  462.             SpaceB
  463.         EndGroup
  464.         ENDM
  465.  
  466. TextBox        MACRO        * TextBox(text,id,mwid) _TextBox, ObjectBackfillB, VertGroup, SpaceS, HorizGroupSC, Space, TextN(text),TRAT_ID,id,TRAT_MinWidth,mwid, Space, EndGroup, SpaceS, EndGroup
  467.         _TextBox
  468.             ObjectBackfillB
  469.             VertGroup
  470.                 SpaceS
  471.                 HorizGroupSC
  472.                 Space
  473.                 TextN \1
  474.                 DC.L TRAT_ID,\2
  475.                 DC.L TRAT_MinWidth,\3
  476.                 Space,
  477.             EndGroup,
  478.             SpaceS,
  479.         EndGroup
  480.         ENDM
  481.  
  482. TextRIGHT    MACRO        * TextRIGHT(t,id) HorizGroupS, Space, TextN(t), ID(id), EndGroup
  483.         HorizGroupS
  484.             Space
  485.             TextN \1
  486.             ID \2
  487.         EndGroup
  488.         ENDM
  489.  
  490. Integer        MACRO        * Integer(i) TROB_Text,NULL,TRAT_Value,(ULONG)(i)
  491.         DC.L TROB_Text,0
  492.         DC.L TRAT_Value,\1
  493.         ENDM
  494.  
  495. IntegerH    MACRO        * IntegerH(i) TROB_Text,NULL,TRAT_Value,(ULONG)(i),TRAT_Flags,TRTX_HIGHLIGHT
  496.         DC.L TROB_Text,0
  497.         DC.L TRAT_Value,\1
  498.         DC.L TRAT_Flags,TRTX_HIGHLIGHT
  499.         ENDM
  500.  
  501. Integer3    MACRO        * Integer3(i) TROB_Text,NULL,TRAT_Value,(ULONG)(i),TRAT_Flags,TRTX_3D
  502.         DC.L TROB_Text,0
  503.         DC.L TRAT_Value,\1
  504.         DC.L TRAT_Flags,TRTX_3D
  505.         ENDM
  506.  
  507. IntegerB    MACRO        * IntegerB(i) TROB_Text,NULL,TRAT_Value,(ULONG)(i),TRAT_Flags,TRTX_BOLD
  508.         DC.L TROB_Text,0
  509.         DC.L TRAT_Value,\1
  510.         DC.L TRAT_Flags,TRTX_BOLD
  511.         ENDM
  512.  
  513. CenteredInteger    MACRO        * CenteredInteger(i) HorizGroupSC,Space,Integer(i),Space,EndGroup
  514.         HorizGroupSC
  515.             Space
  516.             Integer \1
  517.             Space
  518.         EndGroup
  519.         ENDM
  520.  
  521. CenteredIntegerH   MACRO    * CenteredIntegerH(i) HoizGroupSC,Space,IntegerH(i),Space,EndGroup
  522.         HorizGroupSC
  523.             Space
  524.             IntegerH   \1
  525.             Space
  526.         EndGroup
  527.         ENDM
  528.  
  529. CenteredInteger3   MACRO    * CenteredInteger3(i) HorizGroupSC,Space,Integer3(i),Space,EndGroup
  530.         HorizGroupSC
  531.             Space
  532.             Integer3   \1
  533.             Space
  534.         EndGroup
  535.         ENDM
  536.  
  537. CenteredIntegerB   MACRO    * CenteredIntegerB(i) HorizGroupSC,Space,IntegerB(i),Space,EndGroup
  538.         HorizGroupSC
  539.             Space
  540.             IntegerB   \1
  541.             Space
  542.         EndGroup
  543.         ENDM
  544.  
  545. IntegerBox    MACRO        * IntegerBox(def,id,mwid) GroupBox, ObjectBackfillB, VertGroup, SpaceS, HorizGroupSC, Space, Integer(def),TRAT_ID,id,TRAT_MinWidth,mwid, Space, EndGroup, SpaceS, EndGroup
  546.         GroupBox
  547.             ObjectBackfillB
  548.             VertGroup
  549.                 SpaceS
  550.                 HorizGroupSC
  551.                 Space
  552.                 Integer \1
  553.                 DC.L TRAT_ID,\2
  554.                 DC.L TRAT_MinWidth,\3
  555.                 Space
  556.             EndGroup
  557.             SpaceS
  558.         EndGroup
  559.         ENDM
  560.  
  561. Button        MACRO        * Button(text,id) TROB_Button,NULL,TRAT_Text,(ULONG)(text),TRAT_ID,(id)
  562.         DC.L TROB_Button,0
  563.         DC.L TRAT_Text,\1
  564.         DC.L TRAT_ID,\2
  565.         ENDM
  566.  
  567. ButtonR        MACRO        * ButtonR(text,id) TROB_Button,NULL,TRAT_Text,(ULONG)(text),TRAT_ID,(id),TRAT_Flags,TRBU_RETURNOK
  568.         DC.L TROB_Button,0
  569.         DC.L TRAT_Text,\1
  570.         DC.L TRAT_ID,\2
  571.         DC.L TRAT_Flags,TRBU_RETURNOK
  572.         ENDM
  573.  
  574. ButtonE        MACRO        * ButtonE(text,id) TROB_Button,NULL,TRAT_Text,(ULONG)(text),TRAT_ID,(id),TRAT_Flags,TRBU_ESCOK
  575.         DC.L TROB_Button,0
  576.         DC.L TRAT_Text,\1
  577.         DC.L TRAT_ID,\2
  578.         DC.L TRAT_Flags,TRBU_ESCOK
  579.         ENDM
  580.  
  581. ButtonRE    MACRO        * ButtonRE(text,id) TROB_Button,NULL,TRAT_Text,(ULONG)(text),TRAT_ID,(id),TRAT_Flags,TRBU_RETURNOK|TRBU_ESCOK
  582.         DC.L TROB_Button,0
  583.         DC.L TRAT_Text,\1
  584.         DC.L TRAT_ID,\2
  585.         DC.L TRAT_Flags,TRBU_RETURNOK!TRBU_ESCOK
  586.         ENDM
  587.  
  588. CenteredButton    MACRO        * CenteredButton(t,i) HorizGroupSC,Space,TROB_Button,NULL,TRAT_Text,(ULONG)(t),TRAT_ID,(i),Space,EndGroup
  589.         HorizGroupSC
  590.             Space
  591.             DC.L TROB_Butto,0
  592.             DC.L TRAT_Text,\1
  593.             DC.L TRAT_ID,\2
  594.             Space
  595.         EndGroup
  596.         ENDM
  597.  
  598. CenteredButtonR    MACRO        * CenteredButtonR(t,i) HorizGroupSC,Space,TROB_Button,NULL,TRAT_Flags,TRBU_RETURNOK,TRAT_Text,(ULONG)(t),TRAT_ID,(i),Space,EndGroup
  599.         HorizGroupSC
  600.             Space
  601.             DC.L TROB_Button,0
  602.             DC.L TRAT_Flags,TRBU_RETURNOK
  603.             DC.L TRAT_Text,\1
  604.             DC.L TRAT_ID,\2
  605.             Space
  606.         EndGroup
  607.         ENDM
  608.  
  609. CenteredButtonE    MACRO        * CenteredButtonE(t,i) HorizGroupSC,Space,TROB_Button,NULL,TRAT_Flags,TRBU_ESCOK,TRAT_Text,(ULONG)(t),TRAT_ID,(i),Space,EndGroup
  610.         HorizGroupSC
  611.             Space
  612.             DC.L TROB_Button,0
  613.             DC.L TRAT_Flags,TRBU_ESCOK
  614.             DC.L TRAT_Text,\1
  615.             DC.L TRAT_ID,\2
  616.             Space
  617.         EndGroup
  618.         ENDM
  619.  
  620. CenteredButtonRE   MACRO    * CenteredButtonRE(t,i) HorizGroupSC,Space,TROB_Button,NULL,TRAT_Flags,TRBU_RETURNOK|TRBU_ESCOK,TRAT_Text,(ULONG)(t),TRAT_ID,(i),Space,EndGroup
  621.         HorizGroupSC
  622.             Space
  623.             DC.L TROB_Button,0
  624.             DC.L TRAT_Flags,TRBU_RETURNOK!TRBU_ESCOK
  625.             DC.L TRAT_Text,\1
  626.             DC.L TRAT_ID,\2
  627.             Space
  628.         EndGroup
  629.         ENDM
  630.  
  631.                 * EmptyButton(id) TROB_Button,NULL,TRAT_Text,(ULONG)"",TRAT_ID,(id)
  632.  
  633.                 * GetFileButton(id) TROB_Button,TRBT_GETFILE,TRAT_Text,(ULONG)"",TRAT_ID,(id),TRAT_Flags,TRBU_YRESIZE
  634.  
  635.                 * GetDrawerButton(id) TROB_Button,TRBT_GETDRAWER,TRAT_Text,(ULONG)"",TRAT_ID,(id),TRAT_Flags,TRBU_YRESIZE
  636.  
  637.                 * GetEntryButton(id) TROB_Button,TRBT_GETENTRY,TRAT_Text,(ULONG)"",TRAT_ID,(id),TRAT_Flags,TRBU_YRESIZE
  638.  
  639. GetFileButtonS    MACRO        * GetFileButtonS(s,id) TROB_Button,TRBT_GETFILE,TRAT_Text,(ULONG)(s),TRAT_ID,(id),TRAT_Flags,TRBU_YRESIZE
  640.         DC.L TROB_Button,TRBT_GETFILE
  641.         DC.L TRAT_Text,\1
  642.         DC.L TRAT_ID,\2
  643.         DC.L TRAT_Flags,TRBU_YRESIZE
  644.         ENDM
  645.  
  646. GetDrawerButtonS   MACRO    * GetDrawerButtonS(s,id) TROB_Button,TRBT_GETDRAWER,TRAT_Text,(ULONG)(s),TRAT_ID,(id),TRAT_Flags,TRBU_YRESIZE
  647.         DC.L TROB_Button,TRBT_GETDRAWER
  648.         DC.L TRAT_Text,\1
  649.         DC.L TRAT_ID,\2
  650.         DC.L TRAT_Flags,TRBU_YRESIZE
  651.         ENDM
  652.  
  653. GetEntryButtonS    MACRO        * GetEntryButtonS(s,id) TROB_Button,TRBT_GETENTRY,TRAT_Text,(ULONG)(s),TRAT_ID,(id),TRAT_Flags,TRBU_YRESIZE
  654.         DC.L TROB_Button,TRBT_GETENTRY
  655.         DC.L TRAT_Text,\1
  656.         DC.L TRAT_ID,\2
  657.         DC.L TRAT_Flags,TRBU_YRESIZE
  658.         ENDM
  659.  
  660. * Lines
  661.  
  662. Line        MACRO        * Line(flags) TROB_Line,flags
  663.         DC.L TROB_Line,\1
  664.         ENDM
  665.  
  666. HorizSeparator    MACRO        * HorizSeparator HorizGroupEC,Space,Line(TROF_HORIZ),Space,EndGroup
  667.         HorizGroupEC
  668.             Space
  669.             Line    TROF_HORIZ
  670.             Space
  671.         EndGroup
  672.         ENDM
  673.  
  674. VertSeparator    MACRO        * VertSeparator VertGroupEC,Space,Line(TROF_VERT),Space,EndGroup
  675.         VertGroupEC
  676.             Space
  677.             Line    TROF_VERT
  678.             Space
  679.         EndGroup
  680.         ENDM
  681.  
  682. NamedSeparator    MACRO        * NamedSeparator(text) HorizGroupEC,Space,Line(TROF_HORIZ),Space,TextT(text),Space,Line(TROF_HORIZ),Space,EndGroup
  683.         HorizGroupEC
  684.             Space
  685.             Line    TROF_HORIZ
  686.             Space
  687.             TextT \1
  688.             Space
  689.             Line    TROF_HORIZ
  690.             Space
  691.         EndGroup
  692.         ENDM
  693.  
  694. NamedSeparatorI    MACRO        * NamedSeparatorI(te,id) HorizGroupEC,Space,Line(TROF_HORIZ),Space,TextT(te),TRAT_ID,id,Space,Line(TROF_HORIZ),Space,EndGroup
  695.         HorizGroupEC
  696.             Space
  697.             Line    TROF_HORIZ
  698.             Space
  699.             TextT \1
  700.             DC.L TRAT_ID,\2
  701.             Space
  702.             Line    TROF_HORIZ
  703.             Space
  704.         EndGroup
  705.         ENDM
  706.  
  707. NamedSeparatorN    MACRO        * NamedSeparatorN(text) HorizGroupEC,Line(TROF_HORIZ),Space,TextT(text),Space,Line(TROF_HORIZ),EndGroup
  708.         HorizGroupEC
  709.             Line    TROF_HORIZ
  710.             Space
  711.             TextT \1
  712.             Space
  713.             Line    TROF_HORIZ
  714.         EndGroup
  715.         ENDM
  716.  
  717. NamedSeparatorIN   MACRO    * NamedSeparatorIN(te,id) HorizGroupEC,Line(TROF_HORIZ),Space,TextT(te),TRAT_ID,id,Space,Line(TROF_HORIZ),EndGroup
  718.         HorizGroupEC
  719.             Line    TROF_HORIZ
  720.             Space
  721.             TextT \1
  722.             DC.L TRAT_ID,\2
  723.             Space
  724.             Line    TROF_HORIZ
  725.         EndGroup
  726.         ENDM
  727.  
  728. * FrameBox
  729.  
  730. GroupBox    MACRO        * GroupBox TROB_FrameBox,TRFB_GROUPING
  731.         DC.L TROB_FrameBox,TRFB_GROUPING
  732.         ENDM
  733.  
  734. NamedFrameBox    MACRO        * NamedFrameBox(t) TROB_FrameBox,TRFB_FRAMING,TRAT_Text,(ULONG)(t)
  735.         DC.L TROB_FrameBox,TRFB_FRAMING
  736.         DC.L TRAT_Text,\1
  737.         ENDM
  738.  
  739. _TextBox    MACRO        * _TextBox TROB_FrameBox,TRFB_TEXT
  740.         DC.L TROB_FrameBox,TRFB_TEXT
  741.         ENDM
  742.  
  743. * DropBox
  744.  
  745. DropBox        MACRO        * DropBox(id) TROB_DropBox,NULL,TRAT_ID,(id)
  746.         DC.L TROB_DropBox,0
  747.         DC.L TRAT_ID,\1
  748.         ENDM
  749.  
  750. * CheckBox gadget
  751.  
  752. CheckBox    MACRO        * CheckBox(id) TROB_CheckBox,NULL,TRAT_ID,id
  753.         DC.L TROB_CheckBox,0
  754.         DC.L TRAT_ID,\1
  755.         ENDM
  756.  
  757. CheckBoxC    MACRO        * CheckBoxC(id) TROB_CheckBox,NULL,TRAT_ID,id,TRAT_Value,TRUE
  758.         DC.L TROB_CheckBox,0
  759.         DC.L TRAT_ID,\1
  760.         DC.L TRAT_Value,TRUE
  761.         ENDM
  762.  
  763. CheckBoxLEFT    MACRO        * CheckBoxLEFT(id) HorizGroupS, CheckBox(id), Space, EndGroup
  764.         HorizGroupS
  765.             CheckBox   \1
  766.             Space
  767.         EndGroup
  768.         ENDM
  769.  
  770. CheckBoxCLEFT    MACRO        * CheckBoxCLEFT(id) HorizGroupS, CheckBoxC(id), Space, EndGroup
  771.         HorizGroupS
  772.             CheckBoxC   \1
  773.             Space
  774.         EndGroup
  775.         ENDM
  776.  
  777. * String gadget
  778.  
  779. StringGadget    MACRO        * StringGadget(def,id) TROB_String,(ULONG)def,TRAT_ID,(id)
  780.         DC.L TROB_String,\1
  781.         DC.L TRAT_ID,\1
  782.         ENDM
  783.  
  784. * Cycle gadget
  785.  
  786. CycleGadget    MACRO        * CycleGadget(ent,val,id) TROB_Cycle,(ULONG)ent,TRAT_ID,(id),TRAT_Value,(val)
  787.         DC.L TROB_Cycle,\1
  788.         DC.L TRAT_ID,\2
  789.         DC.L TRAT_Value,\3
  790.         ENDM
  791.  
  792. MXGadget    MACRO        * MXGadget(ent,val,id) TROB_Cycle,(ULONG)ent,TRAT_ID,(id),TRAT_Value,(val),TRAT_Flags,TRCY_MX
  793.         DC.L TROB_Cycle,\1
  794.         DC.L TRAT_ID,\2
  795.         DC.L TRAT_Value,\3
  796.         DC.L TRAT_Flags,TRCY_MX
  797.         ENDM
  798.  
  799. MXGadgetR    MACRO        * MXGadgetR(ent,val,id) TROB_Cycle,(ULONG)ent,TRAT_ID,(id),TRAT_Value,(val),TRAT_Flags,TRCY_MX|TRCY_RIGHTLABELS
  800.         DC.L TROB_Cycle,\1
  801.         DC.L TRAT_ID,\2
  802.         DC.L TRAT_Value,\3
  803.         DC.L TRAT_Flags,TRCY_MX!TRCY_RIGHTLABELS
  804.         ENDM
  805.  
  806. * Slider gadget
  807.  
  808. SliderGadget    MACRO        * SliderGadget(mini,maxi,val,id) TROB_Slider,NULL,TRSL_Min,(mini),TRSL_Max,(maxi),TRAT_ID,(id),TRAT_Value,(val)
  809.         DC.L TROB_Slider,0
  810.         DC.L TRSL_Min,\1
  811.         DC.L TRSL_Max,\2
  812.         DC.L TRAT_ID,\3
  813.         DC.L TRAT_Value,\4
  814.         ENDM
  815.  
  816. * Palette gadget
  817.  
  818. PaletteGadget    MACRO        * PaletteGadget(val,id) TROB_Palette,NULL,TRAT_ID,(id),TRAT_Value,(val)
  819.         DC.L TROB_Palette,0
  820.         DC.L TRAT_ID,\1
  821.         DC.L TRAT_Value,\2
  822.         ENDM
  823.  
  824. * Listview gadget
  825.  
  826. ListRO        MACRO        * ListRO(ent,id,top) TROB_Listview,(ULONG)(ent),TRAT_Flags,TRLV_NOGAP|TRLV_READONLY,TRAT_ID,id,TRAT_Value,0,TRLV_Top,top
  827.         DC.L TROB_Listview,\1
  828.         DC.L TRAT_Flags,TRLV_NOGAP!TRLV_READONLY
  829.         DC.L TRAT_ID,\2
  830.         DC.L TRAT_Value,0
  831.         DC.L TRLV_Top,\3
  832.         ENDM
  833.  
  834. ListSel        MACRO        * ListSel(ent,id,top) TROB_Listview,(ULONG)(ent),TRAT_Flags,TRLV_NOGAP|TRLV_SELECT,TRAT_ID,id,TRAT_Value,0,TRLV_Top,top
  835.         DC.L TROB_Listview,\1
  836.         DC.L TRAT_Flags,TRLV_NOGAP!TRLV_SELECT
  837.         DC.L TRAT_ID,\2
  838.         DC.L TRAT_Value,0
  839.         DC.L TRLV_Top,\3
  840.         ENDM
  841.  
  842. ListSS        MACRO        * ListSS(e,id,top,v) TROB_Listview,(ULONG)(e),TRAT_Flags,TRLV_NOGAP|TRLV_SHOWSELECTED,TRAT_ID,id,TRAT_Value,v,TRLV_Top,top
  843.         DC.L TROB_Listview,\1
  844.         DC.L TRAT_Flags,TRLV_NOGAP!TRLV_SHOWSELECTED
  845.         DC.L TRAT_ID,\2
  846.         DC.L TRAT_Value,\3
  847.         DC.L TRLV_Top,\4
  848.         ENDM
  849.  
  850. ListROC        MACRO        * ListROC(ent,id,top) TROB_Listview,(ULONG)(ent),TRAT_Flags,TRLV_NOGAP|TRLV_READONLY|TRLV_NOCURSORKEYS,TRAT_ID,id,TRAT_Value,0,TRLV_Top,top
  851.         DC.L TROB_Listview,\1
  852.         DC.L TRAT_Flags,TRLV_NOGAP!TRLV_READONLY!TRLV_NOCURSORKEYS
  853.         DC.L TRAT_ID,\2
  854.         DC.L TRAT_Value,0
  855.         DC.L TRLV_Top,\3
  856.         ENDM
  857.  
  858. ListSelC    MACRO        * ListSelC(ent,id,top) TROB_Listview,(ULONG)(ent),TRAT_Flags,TRLV_NOGAP|TRLV_SELECT|TRLV_NOCURSORKEYS,TRAT_ID,id,TRAT_Value,0,TRLV_Top,top
  859.         DC.L TROB_Listview,\1
  860.         DC.L TRAT_Flags,TRLV_NOGAP!TRLV_SELECT!TRLV_NOCURSORKEYS
  861.         DC.L TRAT_ID,\2
  862.         DC.L TRAT_Value,0
  863.         DC.L TRLV_Top,\3
  864.         ENDM
  865.  
  866. ListSSC        MACRO        * ListSSC(e,id,top,v) TROB_Listview,(ULONG)(e),TRAT_Flags,TRLV_NOGAP|TRLV_SHOWSELECTED|TRLV_NOCURSORKEYS,TRAT_ID,id,TRAT_Value,v,TRLV_Top,top
  867.         DC.L TROB_Listview,\1
  868.         DC.L TRAT_Flags,TRLV_NOGAP!TRLV_SHOWSELECTED!TRLV_NOCURSORKEYS
  869.         DC.L TRAT_ID,\2
  870.         DC.L TRAT_Value,\3
  871.         DC.L TRLV_Top,\4
  872.         ENDM
  873.  
  874. ListRON        MACRO        * ListRON(ent,id,top) TROB_Listview,(ULONG)(ent),TRAT_Flags,TRLV_NOGAP|TRLV_READONLY|TRLV_NUNUMPADKEYS,TRAT_ID,id,TRAT_Value,0,TRLV_Top,top
  875.         DC.L TROB_Listview,\1,TRAT_Flags,TRLV_NOGAP!TRLV_READONLY!TRLV_NUNUMPADKEYS,TRAT_ID,id,TRAT_Value,0,TRLV_Top,top
  876.         ENDM
  877.  
  878. ListSelN    MACRO        * ListSelN(ent,id,top) TROB_Listview,(ULONG)(ent),TRAT_Flags,TRLV_NOGAP|TRLV_SELECT|TRLV_NONUMPADKEYS,TRAT_ID,id,TRAT_Value,0,TRLV_Top,top
  879.         DC.L TROB_Listview,\1
  880.         DC.L TRAT_Flags,TRLV_NOGAP!TRLV_SELECT!TRLV_NONUMPADKEYS
  881.         DC.L TRAT_ID,\2
  882.         DC.L TRAT_Value,0
  883.         DC.L TRLV_Top,\3
  884.         ENDM
  885.  
  886. ListSSN        MACRO        * ListSSN(e,id,top,v) TROB_Listview,(ULONG)(e),TRAT_Flags,TRLV_NOGAP|TRLV_SHOWSELECTED|TRLV_NONUMPADKEYS,TRAT_ID,id,TRAT_Value,v,TRLV_Top,top
  887.         DC.L TROB_Listview,\1
  888.         DC.L TRAT_Flags,TRLV_NOGAP!TRLV_SHOWSELECTED!TRLV_NONUMPADKEYS
  889.         DC.L TRAT_ID,\2
  890.         DC.L TRAT_Value,\3
  891.         DC.L TRLV_Top,\4
  892.         ENDM
  893.  
  894. ListROCN    MACRO        * ListROCN(ent,id,top) TROB_Listview,(ULONG)(ent),TRAT_Flags,TRLV_NOGAP|TRLV_READONLY|TRLV_NOCURSORKEYS|TRLV_NONUMPADKEYS,TRAT_ID,id,TRAT_Value,0,TRLV_Top,top
  895.         DC.L TROB_Listview,\1
  896.         DC.L TRAT_Flags,TRLV_NOGAP!TRLV_READONLY!TRLV_NOCURSORKEYS!TRLV_NONUMPADKEYS
  897.         DC.L TRAT_ID,\2
  898.         DC.L TRAT_Value,0
  899.         DC.L TRLV_Top,\3
  900.         ENDM
  901.  
  902. ListSelCN    MACRO        * ListSelCN(ent,id,top) TROB_Listview,(ULONG)(ent),TRAT_Flags,TRLV_NOGAP|TRLV_SELECT|TRLV_NOCURSORKEYS|TRLV_NONUMPADKEYS,TRAT_ID,id,TRAT_Value,0,TRLV_Top,top
  903.         DC.L TROB_Listview,\1
  904.         DC.L TRAT_Flags,TRLV_NOGAP!TRLV_SELECT!TRLV_NOCURSORKEYS!TRLV_NONUMPADKEYS
  905.         DC.L TRAT_ID,\2
  906.         DC.L TRAT_Value,0
  907.         DC.L TRLV_Top,\3
  908.         ENDM
  909.  
  910. ListSSCN    MACRO        * ListSSCN(e,id,top,v) TROB_Listview,(ULONG)(e),TRAT_Flags,TRLV_NOGAP|TRLV_SHOWSELECTED|TRLV_NOCURSORKEYS|TRLV_NONUMPADKEYS,TRAT_ID,id,TRAT_Value,v,TRLV_Top,top
  911.         DC.L TROB_Listview,\1
  912.         DC.L TRAT_Flags,TRLV_NOGAP!TRLV_SHOWSELECTED!TRLV_NOCURSORKEYS!TRLV_NONUMPADKEYS
  913.         DC.L TRAT_ID,\2
  914.         DC.L TRAT_Value,\3
  915.         DC.L TRLV_Top,\4
  916.         ENDM
  917.  
  918.  
  919. FWListRO    MACRO        * FWListRO(ent,id,top) TROB_Listview,(ULONG)(ent),TRAT_Flags,TRLV_NOGAP|TRLV_FWFONT|TRLV_READONLY,TRAT_ID,id,TRAT_Value,0,TRLV_Top,top
  920.         DC.L TROB_Listview,\1,TRAT_Flags,TRLV_NOGAP!TRLV_FWFONT!TRLV_READONLY,TRAT_ID,id,TRAT_Value,0,TRLV_Top,top
  921.         ENDM
  922.  
  923. FWListSel    MACRO        * FWListSel(ent,id,top) TROB_Listview,(ULONG)(ent),TRAT_Flags,TRLV_NOGAP|TRLV_FWFONT|TRLV_SELECT,TRAT_ID,id,TRAT_Value,0,TRLV_Top,top
  924.         DC.L TROB_Listview,\1
  925.         DC.L TRAT_Flags,TRLV_NOGAP!TRLV_FWFONT!TRLV_SELECT
  926.         DC.L TRAT_ID,\2
  927.         DC.L TRAT_Value,0
  928.         DC.L TRLV_Top,\3
  929.         ENDM
  930.  
  931. FWListSS    MACRO        * FWListSS(e,id,top,v) TROB_Listview,(ULONG)(e),TRAT_Flags,TRLV_NOGAP|TRLV_FWFONT|TRLV_SHOWSELECTED,TRAT_ID,id,TRAT_Value,v,TRLV_Top,top
  932.         DC.L TROB_Listview,\1
  933.         DC.L TRAT_Flags,TRLV_NOGAP!TRLV_FWFONT!TRLV_SHOWSELECTED
  934.         DC.L TRAT_ID,\2
  935.         DC.L TRAT_Value,\3
  936.         DC.L TRLV_Top,\4
  937.         ENDM
  938.  
  939. FWListROC    MACRO        * FWListROC(ent,id,top) TROB_Listview,(ULONG)(ent),TRAT_Flags,TRLV_NOGAP|TRLV_FWFONT|TRLV_READONLY|TRLV_NOCURSORKEYS,TRAT_ID,id,TRAT_Value,0,TRLV_Top,top
  940.         DC.L TROB_Listview,\1
  941.         DC.L TRAT_Flags,TRLV_NOGAP!TRLV_FWFONT!TRLV_READONLY!TRLV_NOCURSORKEYS
  942.         DC.L TRAT_ID,\2
  943.         DC.L TRAT_Value,0
  944.         DC.L TRLV_Top,\3
  945.         ENDM
  946.  
  947. FWListSelC    MACRO        * FWListSelC(ent,id,top) TROB_Listview,(ULONG)(ent),TRAT_Flags,TRLV_NOGAP|TRLV_FWFONT|TRLV_SELECT|TRLV_NOCURSORKEYS,TRAT_ID,id,TRAT_Value,0,TRLV_Top,top
  948.         DC.L TROB_Listview,\1
  949.         DC.L TRAT_Flags,TRLV_NOGAP!TRLV_FWFONT!TRLV_SELECT!TRLV_NOCURSORKEYS
  950.         DC.L TRAT_ID,\2
  951.         DC.L TRAT_Value,0
  952.         DC.L TRLV_Top,\3
  953.         ENDM
  954.  
  955. FWListSSC    MACRO        * FWListSSC(e,id,top,v) TROB_Listview,(ULONG)(e),TRAT_Flags,TRLV_NOGAP|TRLV_FWFONT|TRLV_SHOWSELECTED|TRLV_NOCURSORKEYS,TRAT_ID,id,TRAT_Value,v,TRLV_Top,top
  956.         DC.L TROB_Listview,\1
  957.         DC.L TRAT_Flags,TRLV_NOGAP!TRLV_FWFONT!TRLV_SHOWSELECTED!TRLV_NOCURSORKEYS
  958.         DC.L TRAT_ID,\2
  959.         DC.L TRAT_Value,\3
  960.         DC.L TRLV_Top,\4
  961.         ENDM
  962.  
  963. FWListRON    MACRO        * FWListRON(ent,id,top) TROB_Listview,(ULONG)(ent),TRAT_Flags,TRLV_NOGAP|TRLV_FWFONT|TRLV_READONLY|TRLV_NUNUMPADKEYS,TRAT_ID,id,TRAT_Value,0,TRLV_Top,top
  964.         DC.L TROB_Listview,\1
  965.         DC.L TRAT_Flags,TRLV_NOGAP!TRLV_FWFONT!TRLV_READONLY!TRLV_NUNUMPADKEYS
  966.         DC.L TRAT_ID,\2
  967.         DC.L TRAT_Value,0
  968.         DC.L TRLV_Top,\3
  969.         ENDM
  970.  
  971. FWListSelN    MACRO        * FWListSelN(ent,id,top) TROB_Listview,(ULONG)(ent),TRAT_Flags,TRLV_NOGAP|TRLV_FWFONT|TRLV_SELECT|TRLV_NONUMPADKEYS,TRAT_ID,id,TRAT_Value,0,TRLV_Top,top
  972.         DC.L TROB_Listview,\1
  973.         DC.L TRAT_Flags,TRLV_NOGAP!TRLV_FWFONT!TRLV_SELECT!TRLV_NONUMPADKEYS
  974.         DC.L TRAT_ID,\2
  975.         DC.L TRAT_Value,0
  976.         DC.L TRLV_Top,\3
  977.         ENDM
  978.  
  979. FWListSSN    MACRO        * FWListSSN(e,id,top,v) TROB_Listview,(ULONG)(e),TRAT_Flags,TRLV_NOGAP|TRLV_FWFONT|TRLV_SHOWSELECTED|TRLV_NONUMPADKEYS,TRAT_ID,id,TRAT_Value,v,TRLV_Top,top
  980.         DC.L TROB_Listview,\1
  981.         DC.L TRAT_Flags,TRLV_NOGAP!TRLV_FWFONT!TRLV_SHOWSELECTED!TRLV_NONUMPADKEYS
  982.         DC.L TRAT_ID,\2
  983.         DC.L TRAT_Value,\3
  984.         DC.L TRLV_Top,\4
  985.         ENDM
  986.  
  987. FWListROCN    MACRO        * FWListROCN(ent,id,top) TROB_Listview,(ULONG)(ent),TRAT_Flags,TRLV_NOGAP|TRLV_FWFONT|TRLV_READONLY|TRLV_NOCURSORKEYS|TRLV_NONUMPADKEYS,TRAT_ID,id,TRAT_Value,0,TRLV_Top,top
  988.         DC.L TROB_Listview,\1
  989.         DC.L TRAT_Flags,TRLV_NOGAP!TRLV_FWFONT!TRLV_READONLY!TRLV_NOCURSORKEYS!TRLV_NONUMPADKEYS
  990.         DC.L TRAT_ID,\2
  991.         DC.L TRAT_Value,0
  992.         DC.L TRLV_Top,\3
  993.         ENDM
  994.  
  995. FWListSelCN    MACRO        * FWListSelCN(ent,id,top) TROB_Listview,(ULONG)(ent),TRAT_Flags,TRLV_NOGAP|TRLV_FWFONT|TRLV_SELECT|TRLV_NOCURSORKEYS|TRLV_NONUMPADKEYS,TRAT_ID,id,TRAT_Value,0,TRLV_Top,top
  996.         DC.L TROB_Listview,\1
  997.         DC.L TRAT_Flags,TRLV_NOGAP!TRLV_FWFONT!TRLV_SELECT!TRLV_NOCURSORKEYS!TRLV_NONUMPADKEYS
  998.         DC.L TRAT_ID,\2
  999.         DC.L TRAT_Value,0
  1000.         DC.L TRLV_Top,\3
  1001.         ENDM
  1002.  
  1003. FWListSSCN    MACRO        * FWListSSCN(e,id,top,v) TROB_Listview,(ULONG)(e),TRAT_Flags,TRLV_NOGAP|TRLV_FWFONT|TRLV_SHOWSELECTED|TRLV_NOCURSORKEYS|TRLV_NONUMPADKEYS,TRAT_ID,id,TRAT_Value,v,TRLV_Top,top
  1004.         DC.L TROB_Listview,\1
  1005.         DC.L TRAT_Flags,TRLV_NOGAP!TRLV_FWFONT!TRLV_SHOWSELECTED!TRLV_NOCURSORKEYS!TRLV_NONUMPADKEYS
  1006.         DC.L TRAT_ID,\2
  1007.         DC.L TRAT_Value,\3
  1008.         DC.L TRLV_Top,\4
  1009.         ENDM
  1010.  
  1011. * Progress indicator
  1012.  
  1013. Progress    MACRO        * Progress(maxi,val,id) TROB_Progress,(maxi),TRAT_ID,(id),TRAT_Value,(val)
  1014.         DC.L TROB_Progress,\1
  1015.         DC.L TRAT_ID,\2
  1016.         DC.L TRAT_Value,\3
  1017.         ENDM
  1018.  
  1019. * Image
  1020.  
  1021. BoopsiImage    MACRO        * BoopsiImage(img) TROB_Image,(ULONG)(img),TRAT_Flags,TRIM_BOOPSI
  1022.         DC.L TROB_Image,\1
  1023.         DC.L TRAT_Flags,TRIM_BOOPSI
  1024.         ENDM
  1025.  
  1026. BoopsiImageD    MACRO        * BoopsiImageD(img,mw,mh) TROB_Image,(ULONG)(img),TRAT_MinWidth,(mw),TRAT_MinHeight,(mh),TRAT_Flags,TRIM_BOOPSI
  1027.         DC.L TROB_Image,\1
  1028.         DC.L TRAT_MinWidth,\2
  1029.         DC.L TRAT_MinHeight,\3
  1030.         DC.L TRAT_Flags,TRIM_BOOPSI
  1031.         ENDM
  1032.  
  1033. * Attributes
  1034.  
  1035. ID        MACRO        * ID(id) TRAT_ID,id
  1036.         DC.L TRAT_ID,\1
  1037.         ENDM
  1038.  
  1039. Disabled    MACRO        * Disabled                TRAT_Disabled,TRUE
  1040.         DC.L TRAT_Disabled,TRUE
  1041.         ENDM
  1042.  
  1043. ObjectBackfillWin   MACRO    * ObjectBackfillWin TRAT_Backfill,TRBF_WINDOWBACK
  1044.         DC.L TRAT_Backfill,TRBF_WINDOWBACK
  1045.         ENDM
  1046.  
  1047. ObjectBackfillReq   MACRO    * ObjectBackfillReq TRAT_Backfill,TRBF_REQUESTERBACK
  1048.         DC.L TRAT_Backfill,TRBF_REQUESTERBACK
  1049.         ENDM
  1050.  
  1051. ObjectBackfillB    MACRO        * ObjectBackfillB TRAT_Backfill,TRBF_NONE
  1052.         DC.L TRAT_Backfill,TRBF_NONE
  1053.         ENDM
  1054.  
  1055. ObjectBackfillS    MACRO        * ObjectBackfillS TRAT_Backfill,TRBF_SHINE
  1056.         DC.L TRAT_Backfill,TRBF_SHINE
  1057.         ENDM
  1058.  
  1059. ObjectBackfillSA   MACRO    * ObjectBackfillSA TRAT_Backfill,TRBF_SHINE_SHADOW
  1060.         DC.L TRAT_Backfill,TRBF_SHINE_SHADOW
  1061.         ENDM
  1062.  
  1063. ObjectBackfillSF   MACRO    * ObjectBackfillSF TRAT_Backfill,TRBF_SHINE_FILL
  1064.         DC.L TRAT_Backfill,TRBF_SHINE_FILL
  1065.         ENDM
  1066.  
  1067. ObjectBackfillSB   MACRO    * ObjectBackfillSB TRAT_Backfill,TRBF_SHINE_BACKGROUND
  1068.         DC.L TRAT_Backfill,TRBF_SHINE_BACKGROUND
  1069.         ENDM
  1070.  
  1071. ObjectBackfillA    MACRO        * ObjectBackfillA TRAT_Backfill,TRBF_SHADOW
  1072.         DC.L TRAT_Backfill,TRBF_SHADOW
  1073.         ENDM
  1074.  
  1075. ObjectBackfillAF   MACRO    * ObjectBackfillAF TRAT_Backfill,TRBF_SHADOW_FILL
  1076.         DC.L TRAT_Backfill,TRBF_SHADOW_FILL
  1077.         ENDM
  1078.  
  1079. ObjectBackfillAB   MACRO    * ObjectBackfillAB TRAT_Backfill,TRBF_SHADOW_BACKGROUND
  1080.         DC.L TRAT_Backfill,TRBF_SHADOW_BACKGROUND
  1081.         ENDM
  1082.  
  1083. ObjectBackfillF    MACRO        * ObjectBackfillF TRAT_Backfill,TRBF_FILL
  1084.         DC.L TRAT_Backfill,TRBF_FILL
  1085.         ENDM
  1086.  
  1087. ObjectBackfillFB   MACRO    * ObjectBackfillFB TRAT_Backfill,TRBF_FILL_BACKGROUND
  1088.         DC.L TRAT_Backfill,TRBF_FILL_BACKGROUND
  1089.         ENDM
  1090.  
  1091. * Requester support
  1092.  
  1093.                 * BeginRequester(t,p) WindowTitle(t),WindowPosition(p),WindowBackfillReq,\
  1094.                 *               WindowFlags(TRWF_NOZIPGADGET|TRWF_NOSIZEGADGET|TRWF_NOCLOSEGADGET|TRWF_NODELZIP|TRWF_NOESCCLOSE),\
  1095. BeginRequester    MACRO        *               VertGroupA,Space,HorizGroupA,Space,GroupBox,ObjectBackfillB
  1096.         WindowTitle   \1
  1097.         WindowPosition   \2
  1098.         WindowBackfillReq
  1099.         WindowFlags   TRWF_NOZIPGADGET!TRWF_NOSIZEGADGET!TRWF_NOCLOSEGADGET!TRWF_NODELZIP!TRWF_NOESCCLOSE
  1100.         VertGroupA
  1101.             Space
  1102.             HorizGroupA
  1103.                 Space
  1104.                 GroupBox
  1105.                 ObjectBackfillB
  1106.         ENDM
  1107.  
  1108. BeginRequesterGad   MACRO    * BeginRequesterGads Space,EndGroup,Space
  1109.                 Space
  1110.             EndGroup
  1111.             Space
  1112.         ENDM
  1113.  
  1114. EndRequester    MACRO        * EndRequester Space,EndGroup,EndProject
  1115.             Space
  1116.         EndGroup
  1117.         EndProject
  1118.         ENDM
  1119.  
  1120.  ENDC ; TR_NOMACROS
  1121.  
  1122.  
  1123. * ////////////////////////////////////////////////////////////////////// *
  1124. * //////////////////////////////////////////////// The Triton message // *
  1125. * ////////////////////////////////////////////////////////////////////// *
  1126.  
  1127.    STRUCTURE TR_Message,0
  1128.       APTR   trm_Project        * The project which triggered the message
  1129.       ULONG  trm_ID            * The object's ID (where appropriate)
  1130.       ULONG  trm_Class            * The Triton message class
  1131.       ULONG  trm_Data            * The class-specific data
  1132.       ULONG  trm_Code            * Currently only used by TRMS_KEYPRESSED
  1133.       ULONG  trm_Qualifiers        * IEQUALIFIERs
  1134.       ULONG  trm_Seconds        * \ Copy of system clock time (Only where
  1135.       ULONG  trm_Micros            * / available! If not set, trm_Seconds is NULL)
  1136.       APTR   trm_App            * The project's application
  1137.       LABEL  TR_Message_SIZE
  1138.  
  1139. TRMS_CLOSEWINDOW    equ    1    * The window should be closed
  1140. TRMS_ERROR        equ    2    * An error occured. Error code in trm_Data
  1141. TRMS_NEWVALUE        equ    3    * Object's value has changed. New value in trm_Data
  1142. TRMS_ACTION        equ    4    * Object has triggered an action */
  1143. TRMS_ICONDROPPED    equ    5    * Icon dropped over window (ID=0) or DropBox. AppMessage* in trm_Data
  1144. TRMS_KEYPRESSED        equ    6    * Key pressed. trm_Data contains ASCII code, trm_Code raw code and
  1145.                     * trm_Qualifier contains qualifiers
  1146. TRMS_HELP        equ    7    * The user requested help for the specified ID
  1147.  
  1148.  
  1149. * ////////////////////////////////////////////////////////////////////// *
  1150. * //////////////////////////////////////////////// Triton error codes // *
  1151. * ////////////////////////////////////////////////////////////////////// *
  1152.  
  1153. TRER_OK            equ    0    * No error
  1154.  
  1155. TRER_ALLOCMEM        equ    1    * Not enough memory
  1156. TRER_OPENWINDOW        equ    2    * Can't open window
  1157. TRER_WINDOWTOOBIG    equ    3    * Window would be too big for screen
  1158. TRER_DRAWINFO        equ    4    * Can't get screen's DrawInfo
  1159. TRER_OPENFONT        equ    5    * Can't open font
  1160. TRER_CREATEMSGPORT    equ    6    * Can't create message port
  1161. TRER_INSTALLOBJECT    equ    7    * Can't create an object
  1162. TRER_CREATECLASS    equ    8    * Can't create a class
  1163. TRER_NOLOCKPUBSCREEN    equ    9    * Can't lock public screen
  1164. TRER_CREATEMENUS    equ    12    * Error while creating the menus
  1165. TRER_GT_CREATECONTEXT    equ    14    * Can't create gadget context
  1166.  
  1167. TRER_MAXERRORNUM    equ    15    * PRIVATE!
  1168.  
  1169.  
  1170. * ////////////////////////////////////////////////////////////////////// *
  1171. * ///////////////////////////////////////// Tags for TR_OpenProject() // *
  1172. * ////////////////////////////////////////////////////////////////////// *
  1173.  
  1174. * Window/Project
  1175. TRWI_Title        equ    (TAG_USER+1)    * STRPTR: The window title
  1176. TRWI_Flags        equ    (TAG_USER+2)    * See below for window flags
  1177. TRWI_Underscore        equ    (TAG_USER+3)    * char *: The underscore for menu and gadget shortcuts
  1178. TRWI_Position        equ    (TAG_USER+4)    * Window position, see below
  1179. TRWI_CustomScreen    equ    (TAG_USER+5)    * struct Screen *
  1180. TRWI_PubScreen        equ    (TAG_USER+6)    * struct Screen *, must have been locked!
  1181. TRWI_PubScreenName    equ    (TAG_USER+7)    * STRPTR, Triton is doing the locking
  1182. TRWI_PropFontAttr    equ    (TAG_USER+8)    * struct TextAttr *: The proportional font
  1183. TRWI_FixedWidthFontAttr    equ    (TAG_USER+9)    * struct TextAttr *: The fixed-width font
  1184. TRWI_Backfill        equ    (TAG_USER+10)    * The backfill type, see below
  1185. TRWI_ID            equ    (TAG_USER+11)    * ULONG: The window ID
  1186. TRWI_Dimensions        equ    (TAG_USER+12)    * struct TR_Dimensions *
  1187. TRWI_ScreenTitle    equ    (TAG_USER+13)    * STRPTR: The screen title
  1188.  
  1189. * Menus
  1190. TRMN_Title        equ    (TAG_USER+101)    * STRPTR: Menu
  1191. TRMN_Item        equ    (TAG_USER+102)    * STRPTR: Menu item
  1192. TRMN_Sub        equ    (TAG_USER+103)    * STRPTR: Menu subitem
  1193. TRMN_Flags        equ    (TAG_USER+104)    * See below for flags
  1194.  
  1195. * General object attributes
  1196. TRAT_ID            equ    (TAG_USER+150)    * The object's/menu's ID
  1197. TRAT_Flags        equ    (TAG_USER+151)    * The object's flags
  1198. TRAT_Value        equ    (TAG_USER+152)    * The object's value
  1199. TRAT_Text        equ    (TAG_USER+153)    * The object's text
  1200. TRAT_Disabled        equ    (TAG_USER+154)    * Disabled object?
  1201. TRAT_Backfill        equ    (TAG_USER+155)    * Backfill pattern
  1202. TRAT_MinWidth        equ    (TAG_USER+156)    * Minimum width
  1203. TRAT_MinHeight        equ    (TAG_USER+157)    * Minimum height
  1204.  
  1205. TROB_USER        equ    (TAG_USER+800)    * PRIVATE!
  1206.  
  1207.  
  1208. * ////////////////////////////////////////////////////////////////////// *
  1209. * ////////////////////////////////////////////////////// Window flags // *
  1210. * ////////////////////////////////////////////////////////////////////// *
  1211.  
  1212. TRWF_BACKDROP        equ    $00000001    * Create a backdrop borderless window
  1213. TRWF_NODRAGBAR        equ    $00000002    * Don't use a dragbar
  1214. TRWF_NODEPTHGADGET    equ    $00000004    * Don't use a depth-gadget
  1215. TRWF_NOCLOSEGADGET    equ    $00000008    * Don't use a close-gadget
  1216. TRWF_NOACTIVATE        equ    $00000010    * Don't activate window
  1217. TRWF_NOESCCLOSE        equ    $00000020    * Don't send TRMS_CLOSEWINDOW when Esc is pressed
  1218. TRWF_NOPSCRFALLBACK    equ    $00000040    * Don't fall back onto default PubScreen
  1219. TRWF_NOZIPGADGET    equ    $00000080    * Don't use a zip-gadget
  1220. TRWF_ZIPCENTERTOP    equ    $00000100    * Center the zipped window on the title bar
  1221. TRWF_NOMINTEXTWIDTH    equ    $00000200    * Minimum window width not according to title text
  1222. TRWF_NOSIZEGADGET    equ    $00000400    * Don't use a sizing-gadget
  1223. TRWF_NOFONTFALLBACK    equ    $00000800    * Don't fall back to topaz.8
  1224. TRWF_NODELZIP        equ    $00001000    * Don't zip the window when Del is pressed
  1225. TRWF_SIMPLEREFRESH    equ    $00002000    * Use simple refresh instead of smart refresh
  1226. TRWF_ZIPTOCURRENTPOS    equ    $00004000    * Will zip the window at the current position (OS3.0+)
  1227. TRWF_APPWINDOW        equ    $00008000    * Create an AppWindow without using class_dropbox
  1228. TRWF_ACTIVATESTRGAD    equ    $00010000    * Activate the first string gadget after opening the window
  1229. TRWF_HELP        equ    $00020000    * Pressing <Help> will create a TRMS_HELP message
  1230.  
  1231.  
  1232. * ////////////////////////////////////////////////////////////////////// *
  1233. * //////////////////////////////////////////////////////// Menu flags // *
  1234. * ////////////////////////////////////////////////////////////////////// *
  1235.  
  1236. TRMF_CHECKIT        equ    $00000001    * Leave space for a checkmark
  1237. TRMF_CHECKED        equ    $00000002    * Check the item (includes TRMF_CHECKIT)
  1238. TRMF_DISABLED        equ    $00000004    * Ghost the menu/item
  1239.  
  1240.  
  1241. * ////////////////////////////////////////////////////////////////////// *
  1242. * ////////////////////////////////////////////////// Window positions // *
  1243. * ////////////////////////////////////////////////////////////////////// *
  1244.  
  1245. TRWP_DEFAULT        equ    0        * Let Triton choose a good position
  1246. TRWP_BELOWTITLEBAR    equ    1        * Left side of screen, below title bar
  1247. TRWP_CENTERTOP        equ    1025        * Top of screen, centered on the title bar
  1248. TRWP_TOPLEFTSCREEN    equ    1026        * Top left corner of screen
  1249. TRWP_CENTERSCREEN    equ    1027        * Centered on the screen
  1250. TRWP_CENTERDISPLAY    equ    1028        * Centered on the currently displayed clip
  1251. TRWP_MOUSEPOINTER    equ    1029        * Under the mouse pointer
  1252.  
  1253.  
  1254. * ////////////////////////////////////////////////////////////////////// *
  1255. * //////////////////////////////////////////////////// Backfill types // *
  1256. * ////////////////////////////////////////////////////////////////////// *
  1257.  
  1258. TRBF_WINDOWBACK        equ    0        * Window backfill colors
  1259. TRBF_REQUESTERBACK    equ    1        * Requester backfill colors
  1260. TRBF_NONE        equ    2        * No backfill (= Fill with BACKGROUNDPEN)
  1261. TRBF_SHINE        equ    3        * Fill with SHINEPEN
  1262. TRBF_SHINE_SHADOW    equ    4        * Fill with SHINEPEN + SHADOWPEN
  1263. TRBF_SHINE_FILL        equ    5        * Fill with SHINEPEN + FILLPEN
  1264. TRBF_SHINE_BACKGROUND    equ    6        * Fill with SHINEPEN + BACKGROUNDPEN
  1265. TRBF_SHADOW        equ    7        * Fill with SHADOWPEN
  1266. TRBF_SHADOW_FILL    equ    8        * Fill with SHADOWPEN + FILLPEN
  1267. TRBF_SHADOW_BACKGROUND    equ    9        * Fill with SHADOWPEN + BACKGROUNDPEN
  1268. TRBF_FILL        equ    10        * Fill with FILLPEN
  1269. TRBF_FILL_BACKGROUND    equ    11        * Fill with FILLPEN + BACKGROUNDPEN
  1270.  
  1271.  
  1272. * ////////////////////////////////////////////////////////////////////// *
  1273. * ////////////////////////////////////////////// Display Object flags // *
  1274. * ////////////////////////////////////////////////////////////////////// *
  1275.  
  1276. * General flags
  1277. TROF_RAISED        equ    $00000001    * Raised object
  1278. TROF_HORIZ        equ    $00000002    * Horizontal object \ Works automatically
  1279. TROF_VERT        equ    $00000004    * Vertical object   / in groups
  1280. TROF_RIGHTALIGN        equ    $00000008    * Align object to the right border if available
  1281.  
  1282. * Text flags
  1283. TRTX_NOUNDERSCORE    equ    $00000100    * Don't interpret underscores
  1284. TRTX_HIGHLIGHT        equ    $00000200    * Highlight text
  1285. TRTX_3D            equ    $00000400    * 3D design
  1286. TRTX_BOLD        equ    $00000800    * Softstyle 'bold'
  1287. TRTX_TITLE        equ    $00001000    * A title (e.g. of a group)
  1288. TRTX_SELECTED        equ    $00002000    * PRIVATE!
  1289.  
  1290.  
  1291. * //////////////////////////////////////////////////////////////////////
  1292. * ////////////////////////////////////////////////////// Menu entries //
  1293. * //////////////////////////////////////////////////////////////////////
  1294.  
  1295. TRMN_BARLABEL        equ    -1        * A barlabel instead of text
  1296.  
  1297.  
  1298. * ////////////////////////////////////////////////////////////////////// *
  1299. * /////////////////////////////////////////// Tags for TR_CreateApp() // *
  1300. * ////////////////////////////////////////////////////////////////////// *
  1301.  
  1302. TRCA_Name        equ    (TAG_USER+1)
  1303. TRCA_LongName        equ    (TAG_USER+2)
  1304. TRCA_Info        equ    (TAG_USER+3)
  1305. TRCA_Version        equ    (TAG_USER+4)
  1306. TRCA_Release        equ    (TAG_USER+5)
  1307. TRCA_Date        equ    (TAG_USER+6)
  1308.  
  1309.  
  1310. * ////////////////////////////////////////////////////////////////////// *
  1311. * ///////////////////////////////////////// Tags for TR_EasyRequest() // *
  1312. * ////////////////////////////////////////////////////////////////////// *
  1313.  
  1314. TREZ_ReqPos        equ    (TAG_USER+1)
  1315. TREZ_LockProject    equ    (TAG_USER+2)
  1316. TREZ_Return        equ    (TAG_USER+3)
  1317. TREZ_Title        equ    (TAG_USER+4)
  1318. TREZ_Activate        equ    (TAG_USER+5)
  1319.  
  1320.  
  1321. * ////////////////////////////////////////////////////////////////////// *
  1322. * ///////////////////////////////////////// The Application Structure // *
  1323. * ////////////////////////////////////////////////////////////////////// *
  1324.  
  1325.    STRUCTURE TR_App,0 * This structure is PRIVATE!
  1326.       APTR   tra_MemPool        * The memory pool
  1327.       ULONG  tra_BitMask        * Bits to Wait() for
  1328.       ULONG  tra_LastError        * TRER code of last error
  1329.       APTR   tra_Name            * Unique name
  1330.       APTR   tra_LongName        * User-readable name
  1331.       APTR   tra_Info            * Info string
  1332.       APTR   tra_Version        * Version
  1333.       APTR   tra_Release        * Release
  1334.       APTR   tra_Date            * Compilation date
  1335.       APTR   tra_AppPort        * Application message port
  1336.       APTR   tra_IDCMPPort        * IDCMP message port
  1337.       APTR   tra_Prefs            * Pointer to Triton app prefs
  1338.       APTR   tra_LastProject        * Used for menu item linking
  1339.       APTR   tra_InputEvent        * Used for RAWKEY conversion
  1340.       LABEL  TR_App_SIZE
  1341.  
  1342.  
  1343. * ////////////////////////////////////////////////////////////////////// *
  1344. * ////////////////////////////////////////// The Dimensions Structure // *
  1345. * ////////////////////////////////////////////////////////////////////// *
  1346.  
  1347.    STRUCTURE TR_Dimensions,0
  1348.       UWORD  trd_Left            * Left
  1349.       UWORD  trd_Top            * Top
  1350.       UWORD  trd_Width            * Width
  1351.       UWORD  trd_Height            * Height
  1352.       UWORD  trd_Left2            * Left
  1353.       UWORD  trd_Top2            * Top
  1354.       UWORD  trd_Width2            * Width
  1355.       UWORD  trd_Height2        * Height
  1356.       BOOL   trd_Zoomed            * Window zoomed?
  1357.       STRUCT reserved,3            * For future expansions
  1358.       LABEL  TR_Dimensions_SIZE
  1359.  
  1360. * ////////////////////////////////////////////////////////////////////// *
  1361. * ///////////////////////////////////////////// The Project Structure // *
  1362. * ////////////////////////////////////////////////////////////////////// *
  1363.  
  1364.    STRUCTURE TR_Project,0 * This structure is PRIVATE!
  1365.       APTR   trp_App            * Our application
  1366.       APTR   trp_Screen            * Our screen, always valid
  1367.  
  1368.       APTR   trp_LockedPubScreen    * Only valid if we're using a PubScreen
  1369.       APTR   trp_ScreenTitle        * The screen title
  1370.  
  1371.       APTR   trp_Window            * The window
  1372.       ULONG  trp_ID            * The window ID
  1373.       APTR   trp_AppWindow        * AppWindow for icon dropping
  1374.  
  1375.       ULONG  trp_IDCMPFlags        * The IDCMP flags
  1376.       ULONG  trp_Flags            * Triton window flags
  1377.  
  1378.       APTR   trp_NewMenu        * The newmenu stucture built by Triton
  1379.       ULONG  trp_NewMenuSize        * The menu structure
  1380.       APTR   trp_Menu            * The next selected menu item
  1381.       UWORD  trp_NextSelect        * The next selected menu item
  1382.  
  1383.       APTR   trp_VisualInfo        * The VisualInfo of our window
  1384.       APTR   trp_DrawInfo        * The DrawInfo of the screen
  1385.       APTR   trp_UserDimensions        * User-supplied dimensions
  1386.       APTR   trp_Dimensions        * Private dimensions
  1387.  
  1388.       ULONG  trp_WindowStdHeight    * The standard height of the window
  1389.       ULONG  trp_LeftBorder        * The width of the left window border
  1390.       ULONG  trp_RightBorder        * The width of the right window border
  1391.       ULONG  trp_TopBorder        * The height of the top window border
  1392.       ULONG  trp_BottomBorder        * The height of the bottom window border
  1393.       ULONG  trp_InnerWidth        * The inner width of the window
  1394.       ULONG  trp_InnerHeight        * The inner height of the window
  1395.       STRUCT trp_ZipDimensions,8    * The dimensions for the zipped window
  1396.       UWORD  trp_AspectFixing        * Pixel aspect correction factor
  1397.  
  1398.       STRUCT trp_ObjectList,MLH_SIZE    * The list of display objects
  1399.       STRUCT trp_MenuList,MLH_SIZE    * The list of menus
  1400.       APTR   trp_MemPool        * The ID linking list (menus & objects)
  1401.       BOOL   trp_HasObjects        * The memory pool for the lists
  1402.  
  1403.       APTR   trp_PropAttr        * The proportional font attributes
  1404.       APTR   trp_FixedWidthAttr        * The fixed-width font attributes
  1405.       APTR   trp_PropFont        * The proportional font
  1406.       APTR   trp_FixedFontAttr        * The fixed-width font
  1407.       BOOL   trp_OpenedPropFont        * \ Have we opened the fonts ?
  1408.       BOOL   trp_OpenedFixedWidthFont    * /
  1409.       UWORD  trp_TotalPropFontHeight    * Height of prop font incl. underscore
  1410.  
  1411.       ULONG  trp_BackfillType        * The backfill type
  1412.       APTR   trp_BackfillHook        * The backfill hook
  1413.  
  1414.       APTR   trp_GadToolsGadgetList    * List of GadTools gadgets
  1415.       APTR   trp_PrevGadget        * Previous GadTools gadget
  1416.       APTR   trp_NewGadget        * GadTools NewGadget
  1417.  
  1418.       APTR   trp_InvisibleRequest    * The invisible blocking requester
  1419.       BOOL   trp_IsUserLocked        * Project locked by the user?
  1420.  
  1421.       ULONG  trp_CurrentID        * The currently keyboard-selected ID
  1422.       BOOL   trp_IsCancelDown        * Cancellation key pressed?
  1423.       BOOL   trp_IsShortcutDown        * Shortcut key pressed?
  1424.       UBYTE  trp_Underscore        * The underscore character
  1425.  
  1426.       BOOL   trp_EscClose        * Close window on Esc ?
  1427.       BOOL   trp_DelZip            * Zip window on Del ?
  1428.       BOOL   trp_PubScreenFallBack    * Fall back onto default public screen ?
  1429.       BOOL   trp_FontFallBack        * Fall back to topaz.8 ?
  1430.  
  1431.       UWORD  trp_OldWidth        * Old window width
  1432.       UWORD  trp_OldHeight        * Old window height
  1433.  
  1434. * ////////////////////////////////////////////////////////////////////// *
  1435. * ///////////////////////////// Default classes, attributes and flags // *
  1436. * ////////////////////////////////////////////////////////////////////// *
  1437.  
  1438. TROB_Button        equ    (TAG_USER+305)    * A BOOPSI button gadget
  1439. TROB_CheckBox        equ    (TAG_USER+303)    * A checkbox gadget
  1440. TROB_Cycle        equ    (TAG_USER+310)    * A cycle gadget
  1441. TROB_FrameBox        equ    (TAG_USER+306)    * A framing box
  1442. TROB_DropBox        equ    (TAG_USER+312)    * An icon drop box
  1443. TRGR_Horiz        equ    (TAG_USER+201)    * Horizontal group, see below for types
  1444. TRGR_Vert        equ    (TAG_USER+202)    * Vertical group, see below for types
  1445. TRGR_End        equ    (TAG_USER+203)    * End of a group
  1446. TROB_Line        equ    (TAG_USER+301)    * A simple line
  1447. TROB_Palette        equ    (TAG_USER+307)    * A palette gadget
  1448. TROB_Scroller        equ    (TAG_USER+309)    * A scroller gadget
  1449. TROB_Slider        equ    (TAG_USER+308)    * A slider gadget
  1450. TROB_Space        equ    (TAG_USER+901)    * The spaces class
  1451. TROB_String        equ    (TAG_USER+311)    * A string gadget
  1452. TROB_Text        equ    (TAG_USER+304)    * A line of text
  1453. TROB_Listview        equ    (TAG_USER+313)    * A listview gadget
  1454. TROB_Progress        equ    (TAG_USER+314)    * A progress indicator
  1455. TROB_Image        equ    (TAG_USER+315)    * An image
  1456.  
  1457.  
  1458. * Button
  1459. TRBU_RETURNOK        equ    $00010000    * <Return> answers the button
  1460. TRBU_ESCOK        equ    $00020000    * <Esc> answers the button
  1461. TRBU_SHIFTED        equ    $00040000    * Shifted shortcut only
  1462. TRBU_UNSHIFTED        equ    $00080000    * Unshifted shortcut only
  1463. TRBU_YRESIZE        equ    $00100000    * Button resizeable in Y direction
  1464. TRBT_TEXT        equ    0        * Text button
  1465. TRBT_GETFILE        equ    1        * GetFile button
  1466. TRBT_GETDRAWER        equ    2        * GetDrawer button
  1467. TRBT_GETENTRY        equ    3        * GetEntry button
  1468.  
  1469.  
  1470. * Group
  1471. TRGR_PROPSHARE        equ    $00000000    * Default: Divide objects proportionally
  1472. TRGR_EQUALSHARE        equ    $00000001    * Divide objects equally
  1473. TRGR_PROPSPACES        equ    $00000002    * Divide spaces proportionally
  1474. TRGR_ARRAY        equ    $00000004    * Top-level array group
  1475.  
  1476. TRGR_ALIGN        equ    $00000008    * Align resizeable objects in secondary dimension
  1477. TRGR_CENTER        equ    $00000010    * Center unresizeable objects in secondary dimension
  1478.  
  1479. TRGR_FIXHORIZ        equ    $00000020    * Don't allow horizontal resizing
  1480. TRGR_FIXVERT        equ    $00000040    * Don't allow vertical resizing
  1481. TRGR_INDEP        equ    $00000080    * Group is independant of surrounding array
  1482.  
  1483.  
  1484. * Framebox
  1485. TRFB_GROUPING        equ    $00000001    * A grouping box
  1486. TRFB_FRAMING        equ    $00000002    * A framing box
  1487. TRFB_TEXT        equ    $00000004    * A text container
  1488.  
  1489.  
  1490. * Scroller
  1491. TRSC_Total        equ    (TAG_USER+1504)
  1492. TRSC_Visible        equ    (TAG_USER+1505)
  1493.  
  1494.  
  1495. * Slider
  1496. TRSL_Min        equ    (TAG_USER+1502)
  1497. TRSL_Max        equ    (TAG_USER+1503)
  1498.  
  1499.  
  1500. * Space
  1501. TRST_NONE        equ    1        * No space
  1502. TRST_SMALL        equ    2        * Small space
  1503. TRST_NORMAL        equ    3        * Normal space (default)
  1504. TRST_BIG        equ    4        * Big space
  1505.  
  1506. * Listview
  1507. TRLV_Top        equ    (TAG_USER+1506)
  1508. TRLV_READONLY        equ    $00010000    /* A read-only list
  1509. TRLV_SELECT        equ    $00020000    /* You may select an entry
  1510. TRLV_SHOWSELECTED    equ    $00040000    /* Selected entry will be shown
  1511. TRLV_NOCURSORKEYS    equ    $00080000    /* Don't use arrow keys
  1512. TRLV_NONUMPADKEYS    equ    $00100000    /* Don't use numeric keypad keys
  1513. TRLV_FWFONT        equ    $00200000    /* Use the fixed-width font
  1514. TRLV_NOGAP        equ    $00400000    /* Don't leave a gap below the list
  1515.  
  1516.  
  1517. * Image
  1518. TRIM_BOOPSI        equ    $00010000    /* Use a BOOPSI IClass image
  1519.  
  1520.  
  1521. * Cycle
  1522. TRCY_MX            equ    $00010000    /* Unfold the cycle gadget to a MX gadget
  1523. TRCY_RIGHTLABELS    equ    $00020000    /* Put the labels to the right of a MX gadget
  1524.  
  1525.  
  1526. * ////////////////////////////////////////////////////////////////////// *
  1527. * /////////////////////////////////////////////////////////// The End // *
  1528. * ////////////////////////////////////////////////////////////////////// *
  1529.  
  1530.    ENDC ; LIBRARIES_TRITON_I
  1531.